﻿package com.Galaxisfarm {
	// Bibliotecas da game engine Flixel
	import com.adamatomic.flixel.*;
	
	public class MenuState extends GameState {
		// Imagem do background
		[Embed(source = "../../data/background_menu.png")] private var ImgBack:Class;
		
		// Método construtor
		public function MenuState():void {
			super();
			
			// Adiciona o background no palco
			var background:FlxSprite = new FlxSprite(ImgBack, 20, 20);
			_lyr_stage.add(background);
			
			// Nome do jogo
			_lyr_sprites.add(new FlxText(0, FlxG.height / 6, FlxG.width, 80, "Galaxis Farm", 0xffffff, null, 32, "center")) as FlxText;
			
			// Botão novo jogo
			_lyr_sprites.add(new FlxButton((FlxG.width / 2) - 104, (FlxG.height / 2) - 45, new FlxSprite(null, 0, 0, false, false, 208, 30, 0xff25155E), onClickPlayButton, new FlxSprite(null, 0, 0, false, false, 208, 30, 0xffE46713), new FlxText(0, 1, 208, 30, "Novo Jogo", 0xffffff, null, 20, "center"), new FlxText(0, 1, 208, 30, "Novo Jogo", 0xffffff, null, 20, "center")));
			
			// Botão de créditos
			_lyr_sprites.add(new FlxButton((FlxG.width / 2) - 104, (FlxG.height / 2), new FlxSprite(null, 0, 0, false, false, 208, 30, 0xff25155E), onClickCredits, new FlxSprite(null, 0, 0, false, false, 208, 30, 0xffE46713), new FlxText(0, 1, 208, 30, "Créditos", 0xffffff, null, 20, "center"), new FlxText(0, 1, 208, 30, "Créditos", 0xffffff, null, 20, "center")));
			
			// Versão beta
			_lyr_sprites.add(new FlxText(0, (FlxG.height / 2) + 60, FlxG.width, 80, "Versão Beta 141", 0xffffff, null, 22, "center")) as FlxText;
		}
		
		// Método chamado quando o botão de novo jogo é clicado
		private function onClickPlayButton():void {
			// Muda o estado do jogo para o mapa
			FlxG.switchState(NameState);
		}
		
		// Método chamado para ir para a tela de créditos
		private function onClickCredits():void {
			// Muda o estado do jogo para créditos
			FlxG.switchState(CreditsState);
		}
	}
}